logo
logo
search icon
Loading...

F[Scala] 2025, 22 ноября 2025 в 11:00

Яндекс

event main image
event main image

Когда:8 дней до начала

Начало:Суббота 22.11, 11:00 GMT+03

Конец:Суббота 22.11, 21:00 GMT+03

Где:Москва

Формат:

Офлайн

Тип:

Конференция

Источник:

Yandex

[SCALA]

22 НОЯБРЯ 2025
МОСКВА

Крупнейшая конференция
по Scala и функциональному программированию от Яндекс Вертикалей*

РЕГИСТРАЦИЯ

Здесь соберутся практикующие Scala-разработчики и энтузиасты функционального программирования, чтобы обсудить самые актуальные технические темы.

Целых 2 зала с докладами про:

  • Метапрограммирование
  • ZIO
  • Распределённые системы
  • Big Data
  • на Scala, Clojure и Erlang

Специалисты из Яндекса, Сбера, Т-Банка, Health Samurai, Spendit AG и Зоопт

Василий

Василий
ефимовавто.ру
Яндекс Вертикали

Мета-программирование и Scala — 12:00

Обзорный доклад о метапрограммировании и его реализации в Scala.
Всё с самого начала — что такое метапрограммирование, какие задачи оно решает. Основной фокус на макросах в Scala. Также рассмотрим различия между Scala 2 и Scala 3.
Разберем кейсы, когда можно обойтись без макросов — magnolia, shapeless, кодогенерация. И нужны ли макросы в эпоху LLM?

Евгений Веретенников

Евгений Веретенников
Яндекс Вертикали

ZIO Mock НЕ МОЖЕТ — SCALAMOCK ПОМОЖЕТ — 13:00

Тесты на ZIO Mock — это боль: загадочные ошибки компиляции, чувство, что библиотека вас не понимает.
У нас было 260 таких тестов в 10+ командах. Библиотека не развивается, отправлена в архив — пришлось искать выход.
Classic scalamock даёт понятные ошибки и удобный синтаксис, но с ZIO Test из коробки не работал. Мы залезли под капот и подружили scalamock с ZIO.
Расскажу, как совместить ленивые и не-ленивые решения, и превратить техническую боль в удобный инструмент для всей компании.

Всеволод Никитин

Всеволод Никитин
Т-Банк

Деградация паттернов отказоустойчивости и деградация — 13:00

#Resilience, #Fallback, #Cassandra, #Scala, #Troubleshooting
Олег Нижников и коллеги мощно и быстро писали Т-Банк на Scala: монолит, сервисы, тулзы и сделали полезный паттерн отказоустойчивости — fallback cache. Например, если не удается получить баланс счета (или сотни других атрибутов) — то из persistence на основе Cassandra берется последнее успешно полученное значение. И всё работало.
Но время идет. Олег Нижников ушел в гемблинг, а вместо него понабрали скалистов с улицы по объявлению. Например, Всеволода Никитина.
И fallback'и в легендарном Scala-монолите почему-то начали деградировать.

Никита Глущенко

Никита Глущенко
Spendit AG

Полиморфные λ-функции и их вклад в безопасную деривацию тайпклассов — 14:00

Мы разберём практический кейс использования полиморфных λ-функций в библиотеке Wisteria для деривации тайпклассов. Покажу, как такой подход усиливает безопасность типов и делает API более надёжным и простым по сравнению с Magnolia.

Иван Шукшин

Иван Шукшин
Health Samurai

SQL как структуры данных: генерация запросов в runtime — 14:00

jOOQ генерирует код из схемы БД. Doobie проверяет типы в compile-time. Но что делать, когда структура запроса зависит от runtime данных?
Покажу DSQL — Clojure-библиотеку, где SQL представлен, как композируемые структуры данных. Разберём, как ML-модель для поиска дубликатов пациентов превращается в сложный SQL в runtime.
Увидите примеры полноценной работы с JSONB операторами PostgreSQL, динамические CTE, параметризацию операторов и имён таблиц. Обсудим архитектуру библиотеки и SQL-first подход через нативный парсер PostgreSQL.

Анна Кривицкая

Анна Кривицкая
Сбер

Big Data по полочкам: Data Lineage на ZIO и Postgres — 15:45

Как написать собственный Data Lineage для визуализации связей между данными Hadoop кластера и потоками их трансформации на стеке Spark, ZIO, Postgres? В докладе я поделюсь нашим опытом: расскажу, как мы подключали SparkListener, использовали Postgres для обработки графа, находили memory leak в ZIO библиотеке, а также о других вызовах, с которыми столкнулись в процессе.

Алексей Троицкий

Алексей Троицкий
Т-Банк

Воркшоп: Tuple, еще tuplee и метапрограммирование — 15:45

Так, 3.7.0, угу, NamedTuple... Опять эти академики какую-то ненужную вещь в язык засунули? Так, это что, еще один способ написать case class, что ли? А под капотом-то там что? В свободном формате лекции-семинара распакуем одну из новых фичей в Scala 3 — именованные кортежи. При этом сделаем отдельный акцент на их использовании в метапрограммировании.

Иван Башкаров

Иван Башкаров
Т-Банк

Как сбрасывать кэш с минимальными усилиями, используя логирование — 16:30

Говорят, в программировании две проблемы: инвалидация кэша и именование переменных. Со второй проблемой нам не доводилось сталкиваться, а вот с первой в свое время пришлось. В докладе я расскажу про замечательную и малоизвестную библиотеку Fetch для композиционного описания вычислений и сборки данных, про её внутреннее устройство, и про то, как нам удалось надёжно и элегантно решить проблему сброса кэша источников данных, используя логирование в библиотеке Fetch.

Андрей Листопадов

Андрей Листопадов
Health Samurai

clojure.core.async - deep dive — 17:30

Разбор реализации асинхронной модели в Clojure: устройство каналов, очередей, таймеров и event‑loop; разберём, во что компилируются «виртуальные треды»; рассмотрим архитектурные последствия реализации через систему макросов.
Будет интересно разработчикам языков программирования, рассматривающим добавление в язык поддержки асинхронного исполнения. После доклада вы поймете различия между асинхронностью и параллелизмом, внутренние механизмы clojure.core.async, сможете оценить применимость подхода в своих проектах и получите более глубокое понимание работы асинхронных тредов и каналов сообщений.

Павел Шапкин

Павел Шапкин
Т-Банк

Антон Бровкин

Антон Бровкин
Т-Банк

Арсений Жижелев

Арсений Жижелев
Т-Банк

Круглый стол
Спецификация программ: от тестов до теории типов — 17:30

Типы или тесты? Кто кого победит в битве за надёжность кода? Scala-разработчики клянутся в верности типам, но почему-то всё ещё пишут тесты… Может, зря?
За круглым столом — жаркие дебаты: можно ли надежно доставлять бизнес-вэлью, доверившись только типам и компилятору, как Scala 3 помогает писать меньше тестов, не снижая качества кода, и почему даже идеально типизированный код всё-таки падает в проде. Говорим про property-based тесты, абстрактные спецификации, их интерпретации, и как не утонуть в мире, где String всё ещё может быть null (что мы, конечно же, осуждаем).

Даниил Соболь

Даниил Соболь
Зоопт

Биржевые системы и теория относительности — 18:15

Когда мы думаем о биржах, кажется, что всё просто: ордер пришёл — положили в стакан. Но в реальности разработчики сталкиваются с «относительностью» распределённых систем: как определить «одновременно», почему события меняются местами и можно ли вообще избежать распределённости?
На примере создания криптобиржи на эрланге расскажу, с какими сетевыми и архитектурными трудностями мы столкнулись и почему классическая параллелизация не всегда помогает. Также обсудим парадоксы реального времени и как случайности становятся частью бизнес-модели.


Василий Ефимов

Василий Ефимов

Авто.ру
Яндекс Вертикали

Большой зал

Метапрограммирование и Scala

Евгений Веретенников

Евгений Веретенников

Яндекс Вертикали

Большой зал

ZIO Mock НЕ МОЖЕТ — SCALAMOCK ПОМОЖЕТ

Всеволод Никитин

Всеволод Никитин

Т-Банк

Малый зал

Деградация паттернов отказоустойчивости и деградация

Никита Глущенко

Никита Глущенко

Spendit AG

Большой зал

Полиморфные λ-функции и их вклад в безопасную деривацию тайпклассов

Иван Шукшин

Иван Шукшин

Health Samurai

Малый зал

SQL как структуры данных: генерация запросов в runtime

Анна Кривицкая

Анна Кривицкая

Сбер

Большой зал

Big Data по полочкам: Data Lineage на ZIO и Postgres

Иван Башкаров

Иван Башкаров

Т-Банк

Большой зал

Как сбрасывать кэш с минимальными усилиями, используя логирование

Алексей Троицкий

Алексей Троицкий

Т-Банк

Малый зал

Воркшоп: Tuple, еще tuplee и метапрограммирование

Даниил Соболь

Даниил Соболь

Зоопт

Большой зал

Биржевые системы и теория относительности

Андрей Листопадов

Андрей Листопадов

Health Samurai

Большой зал

clojure.core.async - deep dive

Павел Шапкин

Павел Шапкин

Т-Банк

Антон Бровкин

Антон Бровкин

Т-Банк

Арсений Жижелев

Арсений Жижелев

Т-Банк

Малый зал

Круглый стол: Спецификация программ — от тестов до теории типов

Офлайн

Похожие события

Когда:8 дней до начала

Начало:Суббота 22.11, 11:00 GMT+03

Конец:Суббота 22.11, 21:00 GMT+03

Где:Москва

Формат:

Офлайн

Тип:

Конференция

Источник:

Yandex